
/*
题目描述
用两个栈来实现一个队列，完成队列的Push和Pop操作。 队列中的元素为int类型。
思路
插入：
直接压栈
出队：
如果栈2不空，弹出栈顶
如果栈2空：
将栈1中压入栈2，弹出栈顶
*/



import java.util.Stack;
public class Solution {
    Stack<Integer> stack1 = new Stack<Integer>(); //插入队列
    Stack<Integer> stack2 = new Stack<Integer>(); //弹出队列
    public void push(int node) {
        stack1.push(node);
    }

    public int pop() {
        if(stack2.isEmpty()){
            if(!stack1.isEmpty()){
                while(!stack1.empty()){
                    stack2.push(stack1.pop());
                }
            }else{
                System.out.println("队空");
            }
        }
        return stack2.pop();
    }


    public static void main(String args[]){
        Solution s = new Solution();
        int num[] ={2,3,4,2,6,2,5,1};
        s.push(1);
        s.push(2);
        s.push(3);
        s.push(4);
        s.push(5);


        System.out.println(s.pop());
        System.out.println(s.pop());
        System.out.println(s.pop());
        System.out.println(s.pop());
        System.out.println(s.pop());
//        System.out.println(s.pop());

    }

}